Ext.namespace('pages.user');

pages.user.UserUpdate = function(config) {
	Ext.apply(this, config);
	/** 操作类型 */
	this.store = config.store;
	this.selected = config.selected;
	this.initUIComponents();
	pages.user.UserUpdate.superclass.constructor.call(this);
};

Ext.extend(pages.user.UserUpdate, Ext.Window, {
	initUIComponents : function() {
		var menuRoletree =  new Ext.tree.TreePanel({
			id : 'HANDLE_TREE',
			height : 100,
			rootVisible : false,
			animate : true,
			autoScroll : true,
			defaultType: 'radio',
			checkModel:'single',
			loader : new Ext.tree.TreeLoader({
				baseParams : {
					nodeId : '-1'
				},
				baseAttrs : {
						uiProvider : Ext.tree.TreeCheckNodeUI					
					},
				dataUrl : ExtJ.getActionPath('role/queryRoleListchecked.do')
			}),
			root : new Ext.tree.AsyncTreeNode({
				id : '-1',
				text : '根'
			}),
			listeners : {
				'beforeload' : function(node, e) {
					Ext.getCmp('HANDLE_TREE').getLoader().baseParams.nodeId = node.id;
				}.createDelegate(this)
			}
		})
		this.form = new Ext.form.FormPanel({
			layout : 'column',
			height : 180,
			labelWidth : 60,
			labelAlign : 'right',
			autoScroll : false,
			border : false,
			frame : false,
			items : [ {
				columnWidth : 1,
				height : 10,
				border : false
			}, {
				columnWidth : 1,
				layout : 'form',
				border : false
			},{
				columnWidth : 1,
				layout : 'form',
				border : false,
				items : [ {
					anchor : '99%',
					fieldLabel : '姓名',
					xtype : 'textfield',
					name : 'XM',
					id : 'XM'
				} ]
			} ,{
				columnWidth : 1,
				layout : 'form',
				border : false,
				items : [ {
					anchor : '99%',
					fieldLabel : '岗位名称',
					xtype : 'textfield',
					name : 'GWMC',
					id : 'GWMC'
				} ]
			
			},{
				columnWidth : 1,
				layout : 'form',
				border : false,
				defaultType: 'radio',
				checkModel:'single',
				checkboxToggle:false,
				items : [new Ext.ux.ComboBoxCheckTree({
					id : 'ROLEID',
					name : 'ROLEID',
					fieldLabel : '角色',
					anchor : '99%',
					tree : menuRoletree,
					height:400,
					 autoScroll:false,
					hiddenName : 'setRole',
					selectValueModel : 'all',
					listeners : {
						'expand' : function() {
							Ext.getCmp('HANDLE_TREE').getRootNode().reload();
							Ext.getCmp('HANDLE_TREE').expandAll();
						}.createDelegate(this)
					}
				}) ]
			}],
			tbar : [ {
				text : '保存',
				iconCls:'save',
				handler:this.onUpdate.createDelegate(this)
			}, {
				text : '关闭',
				iconCls:'close',
				handler:this.onCancel.createDelegate(this)
			} ]
		});

		Ext.apply(this, {
			id : 'UserUpdateWindow',
			title : '修改用户',
			border : false,
			layout : 'fit',
			width : 350,
			height : 180,
			style:{
				marginRight: 'auto',
		        marginLeft: 'auto'
			},
			modal : true,
			items : [ this.form ],
			listeners:{
				'render' : this.initData.createDelegate(this)
			}
		});
	},
	initData : function() {
		Ext.getCmp("XM").setValue(this.selected.data.XM);
		Ext.getCmp("GWMC").setValue(this.selected.data.GWMC);
		//Ext.getCmp("ROLEID").setValue(this.selected.data.NAME);
	},
	onUpdate:function(){
		var xm = Ext.getCmp("XM").getValue();
		var gwmc =Ext.getCmp("GWMC").getValue();
		var role =Ext.getCmp("ROLEID").getValue();
		console.info(role);
		Ext.getBody().mask("正在保存,请稍候...");
		this.form.getForm().submit({
			method:'post',
			url:ExtJ.getActionPath('/p2puser/updateUser.do'),
			params:{
				id:this.selected.data.ID,
				xm:xm,
				gwmc:gwmc,
				role:role
			},
			reset : false,
			success : function(option, action){
				var text = Ext.decode(action.response.responseText);
				this.close();
				if(text.isUpdate){
					Ext.Msg.alert('提示','修改成功!');
				}else{
					Ext.Msg.alert('提示','修改失败!');
				}
				Ext.getBody().unmask(true);
				this.store.reload();
			}.createDelegate(this)
		});
	},
	onCancel : function(){
		this.close();
	}
});